Telegram Group & Telegram Channel
Асинхронно скачиваем файлы

Имея список ссылок на картинки, которые нужно скачать, мы можем это сделать используя простой цикл for, тем самым скачав их последовательно одна за одной.

Но в таких ситуациях как эта (скачивание огромного количества небольших файлов) распараллеливание задачи существенно ускорит процесс.

Для этого воспользуемся функцией ThreadPoolExecutor из стандартного пакета concurrent.futures. Она позволяет запустить нашу функцию, в нескольких екземплярах в параллельных потоках. В конструкторе необходимо указать максимальное количество потоков, которые будут одновременно запущены.

Далее метод .map(download, urls) создает екземпляры нашей функции для скачивания файла, и раскидывает в них элементы списка urls.

Но будьте внимательны: так как скачивание файла — это IO-операция, такой метод не ускоряет вычисления кода. Он лишь позволяет запустить скачивание следующего файла, не дождавшись пока скачается предыдущий.

Ознакомиться с интерактивным примером можно тут.

#threading



tg-me.com/python_academy/786
Create:
Last Update:

Асинхронно скачиваем файлы

Имея список ссылок на картинки, которые нужно скачать, мы можем это сделать используя простой цикл for, тем самым скачав их последовательно одна за одной.

Но в таких ситуациях как эта (скачивание огромного количества небольших файлов) распараллеливание задачи существенно ускорит процесс.

Для этого воспользуемся функцией ThreadPoolExecutor из стандартного пакета concurrent.futures. Она позволяет запустить нашу функцию, в нескольких екземплярах в параллельных потоках. В конструкторе необходимо указать максимальное количество потоков, которые будут одновременно запущены.

Далее метод .map(download, urls) создает екземпляры нашей функции для скачивания файла, и раскидывает в них элементы списка urls.

Но будьте внимательны: так как скачивание файла — это IO-операция, такой метод не ускоряет вычисления кода. Он лишь позволяет запустить скачивание следующего файла, не дождавшись пока скачается предыдущий.

Ознакомиться с интерактивным примером можно тут.

#threading

BY Python Academy




Share with your friend now:
tg-me.com/python_academy/786

View MORE
Open in Telegram


Python Academy Telegram | DID YOU KNOW?

Date: |

The global forecast for the Asian markets is murky following recent volatility, with crude oil prices providing support in what has been an otherwise tough month. The European markets were down and the U.S. bourses were mixed and flat and the Asian markets figure to split the difference.The TSE finished modestly lower on Friday following losses from the financial shares and property stocks.For the day, the index sank 15.09 points or 0.49 percent to finish at 3,061.35 after trading between 3,057.84 and 3,089.78. Volume was 1.39 billion shares worth 1.30 billion Singapore dollars. There were 285 decliners and 184 gainers.

How Does Telegram Make Money?

Telegram is a free app and runs on donations. According to a blog on the telegram: We believe in fast and secure messaging that is also 100% free. Pavel Durov, who shares our vision, supplied Telegram with a generous donation, so we have quite enough money for the time being. If Telegram runs out, we will introduce non-essential paid options to support the infrastructure and finance developer salaries. But making profits will never be an end-goal for Telegram.

Python Academy from pl


Telegram Python Academy
FROM USA